.NET Framework Class Library |
TaskFactory..::.ContinueWhenAny<(Of <(TAntecedentResult, TResult>)>) Method (array<Task<(Of <(TAntecedentResult>)>)>[]()[], Func<(Of <(Task<(Of <(TAntecedentResult>)>), TResult>)>), TaskContinuationOptions) |
TaskFactory Class See Also Send Feedback |
Creates a continuation Task
that will be started upon the completion of any Task in the provided set.
Namespace:
System.Threading.Tasks
Assembly:
System.Threading (in System.Threading.dll)
Syntax
Visual Basic (Declaration) |
---|
Public Function ContinueWhenAny(Of TAntecedentResult, TResult) ( _ tasks As Task(Of TAntecedentResult)(), _ continuationFunction As Func(Of Task(Of TAntecedentResult), TResult), _ continuationOptions As TaskContinuationOptions _ ) As Task(Of TResult) |
C# |
---|
public Task<TResult> ContinueWhenAny<TAntecedentResult, TResult>( Task<TAntecedentResult>[] tasks, Func<Task<TAntecedentResult>, TResult> continuationFunction, TaskContinuationOptions continuationOptions ) |
Parameters
- tasks
- Type: array<
System.Threading.Tasks..::.Task<(Of <(TAntecedentResult>)>)
>[]()[]
The array of tasks from which to continue when one task completes.
- continuationFunction
- Type: System..::.Func<(Of <(Task<(Of <(TAntecedentResult>)>), TResult>)>)
The function delegate to execute when one task in the tasks array completes.
- continuationOptions
- Type: System.Threading.Tasks..::.TaskContinuationOptions
The TaskContinuationOptions value that controls the behavior of the created continuation Task.
Type Parameters
- TAntecedentResult
- The type of the result of the antecedent tasks.
- TResult
- The type of the result that is returned by the continuationFunction delegate and associated with the created Task<(Of <(TResult>)>).
Return Value
The new continuation Task<(Of <(TResult>)>).Remarks
The NotOn* and OnlyOn* TaskContinuationOptions,
which constrain for which TaskStatus states a continuation
will be executed, are illegal with ContinueWhenAny.
Exceptions
Exception | Condition |
---|---|
System..::.ArgumentNullException | The exception that is thrown when the tasks array is null. |
System..::.ArgumentNullException | The exception that is thrown when the continuationFunction argument is null. |
System..::.ArgumentException | The exception that is thrown when the tasks array contains a null value. |
System..::.ArgumentException | The exception that is thrown when the tasks array is empty. |
System..::.ArgumentOutOfRangeException | The exception that is thrown when the continuationOptions argument specifies an invalid TaskContinuationOptions value. |
System..::.ObjectDisposedException | The exception that is thrown when one of the elements in the tasks array has been disposed. |